<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Eigen: Eigen::SparseMatrix&lt; Scalar_, Options_, StorageIndex_ &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
  MathJax.Hub.Config({
    extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
    jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="https://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="eigendoxy.css" rel="stylesheet" type="text/css">
<!--  -->
<script type="text/javascript" src="eigen_navtree_hacks.js"></script>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="Eigen_Silly_Professor_64x64.png"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname"><a href="http://eigen.tuxfamily.org">Eigen</a>
   &#160;<span id="projectnumber">3.4.90 (git rev 67eeba6e720c5745abc77ae6c92ce0a44aa7b7ae)</span>
   </div>
  </td>
   <td>        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.svg"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
          </span>
        </div>
</td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('classEigen_1_1SparseMatrix.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="classEigen_1_1SparseMatrix-members.html">List of all members</a> &#124;
<a href="#pub-methods">Public Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">Eigen::SparseMatrix&lt; Scalar_, Options_, StorageIndex_ &gt; Class Template Reference<div class="ingroups"><a class="el" href="group__Sparse__chapter.html">Sparse linear algebra</a> &raquo; <a class="el" href="group__Sparse__Reference.html">Reference</a> &raquo; <a class="el" href="group__SparseCore__Module.html">SparseCore module</a></div></div>  </div>
</div><!--header-->
<div class="contents">
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template&lt;typename Scalar_, int Options_, typename StorageIndex_&gt;<br />
class Eigen::SparseMatrix&lt; Scalar_, Options_, StorageIndex_ &gt;</h3>

<p>A versatible sparse matrix representation. </p>
<p>This class implements a more versatile variants of the common <em>compressed</em> row/column storage format. Each colmun's (resp. row) non zeros are stored as a pair of value with associated row (resp. colmiun) index. All the non zeros are stored in a single large buffer. Unlike the <em>compressed</em> format, there might be extra space in between the nonzeros of two successive colmuns (resp. rows) such that insertion of new non-zero can be done with limited memory reallocation and copies.</p>
<p>A call to the function <a class="el" href="classEigen_1_1SparseMatrix.html#a6400e6e733a7131f9b776d6386d2ed89">makeCompressed()</a> turns the matrix into the standard <em>compressed</em> format compatible with many library.</p>
<p>More details on this storage sceheme are given in the <a class="el" href="group__TutorialSparse.html">manual pages</a>.</p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
  <table class="tparams">
    <tr><td class="paramname">Scalar_</td><td>the scalar type, i.e. the type of the coefficients </td></tr>
    <tr><td class="paramname">Options_</td><td>Union of bit flags controlling the storage scheme. Currently the only possibility is ColMajor or RowMajor. The default is 0 which means column-major. </td></tr>
    <tr><td class="paramname">StorageIndex_</td><td>the type of the indices. It has to be a <b>signed</b> type (e.g., short, int, std::ptrdiff_t). Default is <code>int</code>.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section warning"><dt>Warning</dt><dd>In Eigen 3.2, the undocumented type <code><a class="el" href="structEigen_1_1EigenBase.html#a554f30542cc2316add4b1ea0a492ff02" title="The interface type of indices.">SparseMatrix::Index</a></code> was improperly defined as the storage index type (e.g., int), whereas it is now (starting from Eigen 3.3) deprecated and always defined as <a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde" title="The Index type as used for the API.">Eigen::Index</a>. Codes making use of <code><a class="el" href="structEigen_1_1EigenBase.html#a554f30542cc2316add4b1ea0a492ff02" title="The interface type of indices.">SparseMatrix::Index</a></code>, might thus likely have to be changed to use <code><a class="el" href="classEigen_1_1SparseMatrixBase.html#a0b540ba724726ebe953f8c0df06081ed">SparseMatrix::StorageIndex</a></code> instead.</dd></dl>
<p>This class can be extended with the help of the plugin mechanism described on the page <a class="el" href="TopicCustomizing_Plugins.html">Extending MatrixBase (and other classes)</a> by defining the preprocessor symbol <code>EIGEN_SPARSEMATRIX_PLUGIN</code>. </p>
</div><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-0-trigger" src="closed.png" alt="+"/> Inheritance diagram for Eigen::SparseMatrix&lt; Scalar_, Options_, StorageIndex_ &gt;:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="classEigen_1_1SparseMatrix__inherit__graph.png" border="0" usemap="#aEigen_1_1SparseMatrix_3_01Scalar___00_01Options___00_01StorageIndex___01_4_inherit__map" alt="Inheritance graph"/></div>
<map name="aEigen_1_1SparseMatrix_3_01Scalar___00_01Options___00_01StorageIndex___01_4_inherit__map" id="aEigen_1_1SparseMatrix_3_01Scalar___00_01Options___00_01StorageIndex___01_4_inherit__map">
<area shape="rect" title="A versatible sparse matrix representation." alt="" coords="29,1027,190,1412"/>
<area shape="rect" href="classEigen_1_1SparseCompressedBase.html" title=" " alt="" coords="5,667,213,979"/>
<area shape="rect" href="classEigen_1_1SparseMatrixBase.html" title=" " alt="" coords="7,321,212,619"/>
<area shape="rect" href="structEigen_1_1EigenBase.html" title=" " alt="" coords="20,5,199,273"/>
</map>
</div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a05c9adc323553ed53726acae06fc4c18"><td class="memItemLeft" align="right" valign="top">Scalar&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#a05c9adc323553ed53726acae06fc4c18">coeff</a> (<a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a> row, <a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a> col) const</td></tr>
<tr class="separator:a05c9adc323553ed53726acae06fc4c18"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6e4f970149f1cbab1eecc2a04c291fb1"><td class="memItemLeft" align="right" valign="top">Scalar &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#a6e4f970149f1cbab1eecc2a04c291fb1">coeffRef</a> (<a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a> row, <a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a> col)</td></tr>
<tr class="separator:a6e4f970149f1cbab1eecc2a04c291fb1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a36b8cc95234b4e2de38a199b6b2af9fc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#a36b8cc95234b4e2de38a199b6b2af9fc">cols</a> () const</td></tr>
<tr class="separator:a36b8cc95234b4e2de38a199b6b2af9fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab0e43ac03eb34e451e0f16e97ea2afda"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#ab0e43ac03eb34e451e0f16e97ea2afda">conservativeResize</a> (<a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a> <a class="el" href="classEigen_1_1SparseMatrix.html#a853a76dd42349fa2f3654a4a61e0f574">rows</a>, <a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a> <a class="el" href="classEigen_1_1SparseMatrix.html#a36b8cc95234b4e2de38a199b6b2af9fc">cols</a>)</td></tr>
<tr class="separator:ab0e43ac03eb34e451e0f16e97ea2afda"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae6f4db56c76e4d374eb8507fbef5bdb5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1Diagonal.html">DiagonalReturnType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#ae6f4db56c76e4d374eb8507fbef5bdb5">diagonal</a> ()</td></tr>
<tr class="separator:ae6f4db56c76e4d374eb8507fbef5bdb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a20301b7b657f0948d6a6da68509fb4da"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classEigen_1_1Diagonal.html">ConstDiagonalReturnType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#a20301b7b657f0948d6a6da68509fb4da">diagonal</a> () const</td></tr>
<tr class="separator:a20301b7b657f0948d6a6da68509fb4da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f927d1e7251a78585b12bf451423d4e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1SparseMatrixBase.html#a0b540ba724726ebe953f8c0df06081ed">StorageIndex</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#a0f927d1e7251a78585b12bf451423d4e">innerIndexPtr</a> ()</td></tr>
<tr class="separator:a0f927d1e7251a78585b12bf451423d4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ade3e26297390865d80a09d1ce06cc916"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classEigen_1_1SparseMatrixBase.html#a0b540ba724726ebe953f8c0df06081ed">StorageIndex</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#ade3e26297390865d80a09d1ce06cc916">innerIndexPtr</a> () const</td></tr>
<tr class="separator:ade3e26297390865d80a09d1ce06cc916"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0fa5da473fe96a8ae7fae6f3ca2d5b62"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1SparseMatrixBase.html#a0b540ba724726ebe953f8c0df06081ed">StorageIndex</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#a0fa5da473fe96a8ae7fae6f3ca2d5b62">innerNonZeroPtr</a> ()</td></tr>
<tr class="separator:a0fa5da473fe96a8ae7fae6f3ca2d5b62"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a62ba20726a10c2c9d095aed024297a2a"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classEigen_1_1SparseMatrixBase.html#a0b540ba724726ebe953f8c0df06081ed">StorageIndex</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#a62ba20726a10c2c9d095aed024297a2a">innerNonZeroPtr</a> () const</td></tr>
<tr class="separator:a62ba20726a10c2c9d095aed024297a2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa6411a0a909423d2d843a2e7d8b8e4e7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#aa6411a0a909423d2d843a2e7d8b8e4e7">innerSize</a> () const</td></tr>
<tr class="separator:aa6411a0a909423d2d843a2e7d8b8e4e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae2d8f72ff86a300b76f9edd67df8d8fd"><td class="memItemLeft" align="right" valign="top">Scalar &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#ae2d8f72ff86a300b76f9edd67df8d8fd">insert</a> (<a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a> row, <a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a> col)</td></tr>
<tr class="separator:ae2d8f72ff86a300b76f9edd67df8d8fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a837934b33a80fe996ff20500373d3a61"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#a837934b33a80fe996ff20500373d3a61">isCompressed</a> () const</td></tr>
<tr class="separator:a837934b33a80fe996ff20500373d3a61"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6400e6e733a7131f9b776d6386d2ed89"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#a6400e6e733a7131f9b776d6386d2ed89">makeCompressed</a> ()</td></tr>
<tr class="separator:a6400e6e733a7131f9b776d6386d2ed89"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a03de8b3da2c142ce8698a76123b3e7d3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#a03de8b3da2c142ce8698a76123b3e7d3">nonZeros</a> () const</td></tr>
<tr class="separator:a03de8b3da2c142ce8698a76123b3e7d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6de5655e0e36dfefd9812d65f48092f9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1SparseMatrixBase.html#a0b540ba724726ebe953f8c0df06081ed">StorageIndex</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#a6de5655e0e36dfefd9812d65f48092f9">outerIndexPtr</a> ()</td></tr>
<tr class="separator:a6de5655e0e36dfefd9812d65f48092f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad2d1a4d9033c2bc0917ea09cdc5c700c"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classEigen_1_1SparseMatrixBase.html#a0b540ba724726ebe953f8c0df06081ed">StorageIndex</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#ad2d1a4d9033c2bc0917ea09cdc5c700c">outerIndexPtr</a> () const</td></tr>
<tr class="separator:ad2d1a4d9033c2bc0917ea09cdc5c700c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a47c7cdf3c713ea69d08387aaf78e0c53"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#a47c7cdf3c713ea69d08387aaf78e0c53">outerSize</a> () const</td></tr>
<tr class="separator:a47c7cdf3c713ea69d08387aaf78e0c53"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aca3916ec112e13c513380b47fad7954b"><td class="memTemplParams" colspan="2">template&lt;typename KeepFunc &gt; </td></tr>
<tr class="memitem:aca3916ec112e13c513380b47fad7954b"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#aca3916ec112e13c513380b47fad7954b">prune</a> (const KeepFunc &amp;keep=KeepFunc())</td></tr>
<tr class="separator:aca3916ec112e13c513380b47fad7954b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4b7ffe0c08f653f5c34b02b9b12e6bf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#ab4b7ffe0c08f653f5c34b02b9b12e6bf">prune</a> (const Scalar &amp;reference, const RealScalar &amp;epsilon=<a class="el" href="structEigen_1_1NumTraits.html">NumTraits</a>&lt; RealScalar &gt;::dummy_precision())</td></tr>
<tr class="separator:ab4b7ffe0c08f653f5c34b02b9b12e6bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae344017e0e191f452ee84fa6a384ea7a"><td class="memTemplParams" colspan="2">template&lt;class SizesType &gt; </td></tr>
<tr class="memitem:ae344017e0e191f452ee84fa6a384ea7a"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#ae344017e0e191f452ee84fa6a384ea7a">reserve</a> (const SizesType &amp;reserveSizes)</td></tr>
<tr class="separator:ae344017e0e191f452ee84fa6a384ea7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad9e36e669468663012b77bf1bff8cc4f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#ad9e36e669468663012b77bf1bff8cc4f">reserve</a> (<a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a> reserveSize)</td></tr>
<tr class="separator:ad9e36e669468663012b77bf1bff8cc4f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a835ae5b304ddbb187eac25d5850b2ced"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#a835ae5b304ddbb187eac25d5850b2ced">resize</a> (<a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a> <a class="el" href="classEigen_1_1SparseMatrix.html#a853a76dd42349fa2f3654a4a61e0f574">rows</a>, <a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a> <a class="el" href="classEigen_1_1SparseMatrix.html#a36b8cc95234b4e2de38a199b6b2af9fc">cols</a>)</td></tr>
<tr class="separator:a835ae5b304ddbb187eac25d5850b2ced"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a853a76dd42349fa2f3654a4a61e0f574"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#a853a76dd42349fa2f3654a4a61e0f574">rows</a> () const</td></tr>
<tr class="separator:a853a76dd42349fa2f3654a4a61e0f574"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f09e3597f37aa8861599260af6a53e0"><td class="memTemplParams" colspan="2">template&lt;typename InputIterators &gt; </td></tr>
<tr class="memitem:a8f09e3597f37aa8861599260af6a53e0"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#a8f09e3597f37aa8861599260af6a53e0">setFromTriplets</a> (const InputIterators &amp;begin, const InputIterators &amp;end)</td></tr>
<tr class="separator:a8f09e3597f37aa8861599260af6a53e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3e8c96b7dd72d03f14b5cf40f5005d55"><td class="memTemplParams" colspan="2">template&lt;typename InputIterators , typename DupFunctor &gt; </td></tr>
<tr class="memitem:a3e8c96b7dd72d03f14b5cf40f5005d55"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#a3e8c96b7dd72d03f14b5cf40f5005d55">setFromTriplets</a> (const InputIterators &amp;begin, const InputIterators &amp;end, DupFunctor dup_func)</td></tr>
<tr class="separator:a3e8c96b7dd72d03f14b5cf40f5005d55"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa4064cc1e3a4038cf09ff03af5a3ffb5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#aa4064cc1e3a4038cf09ff03af5a3ffb5">setIdentity</a> ()</td></tr>
<tr class="separator:aa4064cc1e3a4038cf09ff03af5a3ffb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2feb71dd2ed222057a77ff92b736badc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#a2feb71dd2ed222057a77ff92b736badc">setZero</a> ()</td></tr>
<tr class="separator:a2feb71dd2ed222057a77ff92b736badc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4f28e83ea504f0d8ee76c4b8701939d6"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#a4f28e83ea504f0d8ee76c4b8701939d6">SparseMatrix</a> ()</td></tr>
<tr class="separator:a4f28e83ea504f0d8ee76c4b8701939d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9c8a247192285453d402becafdd106c4"><td class="memTemplParams" colspan="2"><a id="a9c8a247192285453d402becafdd106c4"></a>
template&lt;typename OtherDerived &gt; </td></tr>
<tr class="memitem:a9c8a247192285453d402becafdd106c4"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#a9c8a247192285453d402becafdd106c4">SparseMatrix</a> (const DiagonalBase&lt; OtherDerived &gt; &amp;other)</td></tr>
<tr class="memdesc:a9c8a247192285453d402becafdd106c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy constructor with in-place evaluation. <br /></td></tr>
<tr class="separator:a9c8a247192285453d402becafdd106c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a394987faa818eb6a0a5c9f92c3740f1a"><td class="memTemplParams" colspan="2"><a id="a394987faa818eb6a0a5c9f92c3740f1a"></a>
template&lt;typename OtherDerived &gt; </td></tr>
<tr class="memitem:a394987faa818eb6a0a5c9f92c3740f1a"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#a394987faa818eb6a0a5c9f92c3740f1a">SparseMatrix</a> (const ReturnByValue&lt; OtherDerived &gt; &amp;other)</td></tr>
<tr class="memdesc:a394987faa818eb6a0a5c9f92c3740f1a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy constructor with in-place evaluation. <br /></td></tr>
<tr class="separator:a394987faa818eb6a0a5c9f92c3740f1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a85ce452dd42db3db4e262e955f7820aa"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#a85ce452dd42db3db4e262e955f7820aa">SparseMatrix</a> (const <a class="el" href="classEigen_1_1SparseMatrix.html">SparseMatrix</a> &amp;other)</td></tr>
<tr class="separator:a85ce452dd42db3db4e262e955f7820aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac4a6307cd6ba6b4ee7124d590d3120bf"><td class="memTemplParams" colspan="2">template&lt;typename OtherDerived &gt; </td></tr>
<tr class="memitem:ac4a6307cd6ba6b4ee7124d590d3120bf"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#ac4a6307cd6ba6b4ee7124d590d3120bf">SparseMatrix</a> (const <a class="el" href="classEigen_1_1SparseMatrixBase.html">SparseMatrixBase</a>&lt; OtherDerived &gt; &amp;other)</td></tr>
<tr class="separator:ac4a6307cd6ba6b4ee7124d590d3120bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a794f49fa972d5d39fc81c0925aae1513"><td class="memTemplParams" colspan="2">template&lt;typename OtherDerived , unsigned int UpLo&gt; </td></tr>
<tr class="memitem:a794f49fa972d5d39fc81c0925aae1513"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#a794f49fa972d5d39fc81c0925aae1513">SparseMatrix</a> (const <a class="el" href="classEigen_1_1SparseSelfAdjointView.html">SparseSelfAdjointView</a>&lt; OtherDerived, UpLo &gt; &amp;other)</td></tr>
<tr class="separator:a794f49fa972d5d39fc81c0925aae1513"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa647b5f0462b9986e3c907e9ca7c5984"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#aa647b5f0462b9986e3c907e9ca7c5984">SparseMatrix</a> (<a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a> <a class="el" href="classEigen_1_1SparseMatrix.html#a853a76dd42349fa2f3654a4a61e0f574">rows</a>, <a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a> <a class="el" href="classEigen_1_1SparseMatrix.html#a36b8cc95234b4e2de38a199b6b2af9fc">cols</a>)</td></tr>
<tr class="separator:aa647b5f0462b9986e3c907e9ca7c5984"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad2b635a54bf2fe66facd1cb1872aae9f"><td class="memItemLeft" align="right" valign="top">Scalar&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#ad2b635a54bf2fe66facd1cb1872aae9f">sum</a> () const</td></tr>
<tr class="separator:ad2b635a54bf2fe66facd1cb1872aae9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a20eec45a940a4dd7edcacfa21468b328"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#a20eec45a940a4dd7edcacfa21468b328">swap</a> (<a class="el" href="classEigen_1_1SparseMatrix.html">SparseMatrix</a> &amp;other)</td></tr>
<tr class="separator:a20eec45a940a4dd7edcacfa21468b328"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a542c2a877dcffbd48248b43d3eaf670f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#a542c2a877dcffbd48248b43d3eaf670f">uncompress</a> ()</td></tr>
<tr class="separator:a542c2a877dcffbd48248b43d3eaf670f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5e9513f7d7336a698a47ff3135d6d555"><td class="memItemLeft" align="right" valign="top">Scalar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#a5e9513f7d7336a698a47ff3135d6d555">valuePtr</a> ()</td></tr>
<tr class="separator:a5e9513f7d7336a698a47ff3135d6d555"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ed99bab9d4f142c629f69a93a2d1efb"><td class="memItemLeft" align="right" valign="top">const Scalar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#a6ed99bab9d4f142c629f69a93a2d1efb">valuePtr</a> () const</td></tr>
<tr class="separator:a6ed99bab9d4f142c629f69a93a2d1efb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac837d39f0ae378ecb132f5ef2d7fa74b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrix.html#ac837d39f0ae378ecb132f5ef2d7fa74b">~SparseMatrix</a> ()</td></tr>
<tr class="separator:ac837d39f0ae378ecb132f5ef2d7fa74b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classEigen_1_1SparseCompressedBase"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classEigen_1_1SparseCompressedBase')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classEigen_1_1SparseCompressedBase.html">Eigen::SparseCompressedBase&lt; SparseMatrix&lt; Scalar_, Options_, StorageIndex_ &gt; &gt;</a></td></tr>
<tr class="memitem:a7cf299e08d2a4f6d6869e631e51b12fe inherit pub_methods_classEigen_1_1SparseCompressedBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1Map.html">Map</a>&lt; <a class="el" href="classEigen_1_1Array.html">Array</a>&lt; Scalar, Dynamic, 1 &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseCompressedBase.html#a7cf299e08d2a4f6d6869e631e51b12fe">coeffs</a> ()</td></tr>
<tr class="separator:a7cf299e08d2a4f6d6869e631e51b12fe inherit pub_methods_classEigen_1_1SparseCompressedBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a101b155485ae59ea1261c4f6040f3dc4 inherit pub_methods_classEigen_1_1SparseCompressedBase"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classEigen_1_1Map.html">Map</a>&lt; const <a class="el" href="classEigen_1_1Array.html">Array</a>&lt; Scalar, Dynamic, 1 &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseCompressedBase.html#a101b155485ae59ea1261c4f6040f3dc4">coeffs</a> () const</td></tr>
<tr class="separator:a101b155485ae59ea1261c4f6040f3dc4 inherit pub_methods_classEigen_1_1SparseCompressedBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a197111c1289644f1ea38fe683ccdd82a inherit pub_methods_classEigen_1_1SparseCompressedBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1SparseMatrixBase.html#a0b540ba724726ebe953f8c0df06081ed">StorageIndex</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseCompressedBase.html#a197111c1289644f1ea38fe683ccdd82a">innerIndexPtr</a> ()</td></tr>
<tr class="separator:a197111c1289644f1ea38fe683ccdd82a inherit pub_methods_classEigen_1_1SparseCompressedBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa64818e1aa43015dad01b114b2ab4687 inherit pub_methods_classEigen_1_1SparseCompressedBase"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classEigen_1_1SparseMatrixBase.html#a0b540ba724726ebe953f8c0df06081ed">StorageIndex</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseCompressedBase.html#aa64818e1aa43015dad01b114b2ab4687">innerIndexPtr</a> () const</td></tr>
<tr class="separator:aa64818e1aa43015dad01b114b2ab4687 inherit pub_methods_classEigen_1_1SparseCompressedBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a411e972b097e6aef225415a4c2d0a0b5 inherit pub_methods_classEigen_1_1SparseCompressedBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1SparseMatrixBase.html#a0b540ba724726ebe953f8c0df06081ed">StorageIndex</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseCompressedBase.html#a411e972b097e6aef225415a4c2d0a0b5">innerNonZeroPtr</a> ()</td></tr>
<tr class="separator:a411e972b097e6aef225415a4c2d0a0b5 inherit pub_methods_classEigen_1_1SparseCompressedBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afc056a3895eae1a4c4767252ff04966a inherit pub_methods_classEigen_1_1SparseCompressedBase"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classEigen_1_1SparseMatrixBase.html#a0b540ba724726ebe953f8c0df06081ed">StorageIndex</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseCompressedBase.html#afc056a3895eae1a4c4767252ff04966a">innerNonZeroPtr</a> () const</td></tr>
<tr class="separator:afc056a3895eae1a4c4767252ff04966a inherit pub_methods_classEigen_1_1SparseCompressedBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a837934b33a80fe996ff20500373d3a61 inherit pub_methods_classEigen_1_1SparseCompressedBase"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseCompressedBase.html#a837934b33a80fe996ff20500373d3a61">isCompressed</a> () const</td></tr>
<tr class="separator:a837934b33a80fe996ff20500373d3a61 inherit pub_methods_classEigen_1_1SparseCompressedBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a03de8b3da2c142ce8698a76123b3e7d3 inherit pub_methods_classEigen_1_1SparseCompressedBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structEigen_1_1EigenBase.html#a554f30542cc2316add4b1ea0a492ff02">Index</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseCompressedBase.html#a03de8b3da2c142ce8698a76123b3e7d3">nonZeros</a> () const</td></tr>
<tr class="separator:a03de8b3da2c142ce8698a76123b3e7d3 inherit pub_methods_classEigen_1_1SparseCompressedBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a53a82f962686e18c8dc07a4b9a85ed7b inherit pub_methods_classEigen_1_1SparseCompressedBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1SparseMatrixBase.html#a0b540ba724726ebe953f8c0df06081ed">StorageIndex</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseCompressedBase.html#a53a82f962686e18c8dc07a4b9a85ed7b">outerIndexPtr</a> ()</td></tr>
<tr class="separator:a53a82f962686e18c8dc07a4b9a85ed7b inherit pub_methods_classEigen_1_1SparseCompressedBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2624d4c2661c582de168246c56e8d71e inherit pub_methods_classEigen_1_1SparseCompressedBase"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classEigen_1_1SparseMatrixBase.html#a0b540ba724726ebe953f8c0df06081ed">StorageIndex</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseCompressedBase.html#a2624d4c2661c582de168246c56e8d71e">outerIndexPtr</a> () const</td></tr>
<tr class="separator:a2624d4c2661c582de168246c56e8d71e inherit pub_methods_classEigen_1_1SparseCompressedBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f12f72d14b6c277d09be9f5ce2eab95 inherit pub_methods_classEigen_1_1SparseCompressedBase"><td class="memItemLeft" align="right" valign="top">Scalar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseCompressedBase.html#a0f12f72d14b6c277d09be9f5ce2eab95">valuePtr</a> ()</td></tr>
<tr class="separator:a0f12f72d14b6c277d09be9f5ce2eab95 inherit pub_methods_classEigen_1_1SparseCompressedBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f44c739398794ea77f310b745cc5627 inherit pub_methods_classEigen_1_1SparseCompressedBase"><td class="memItemLeft" align="right" valign="top">const Scalar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseCompressedBase.html#a0f44c739398794ea77f310b745cc5627">valuePtr</a> () const</td></tr>
<tr class="separator:a0f44c739398794ea77f310b745cc5627 inherit pub_methods_classEigen_1_1SparseCompressedBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classEigen_1_1SparseMatrixBase"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classEigen_1_1SparseMatrixBase')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classEigen_1_1SparseMatrixBase.html">Eigen::SparseMatrixBase&lt; SparseMatrix&lt; Scalar_, Options_, StorageIndex_ &gt; &gt;</a></td></tr>
<tr class="memitem:aca7ce296424ef6e478ab0fb19547a7ee inherit pub_methods_classEigen_1_1SparseMatrixBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structEigen_1_1EigenBase.html#a554f30542cc2316add4b1ea0a492ff02">Index</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrixBase.html#aca7ce296424ef6e478ab0fb19547a7ee">cols</a> () const</td></tr>
<tr class="separator:aca7ce296424ef6e478ab0fb19547a7ee inherit pub_methods_classEigen_1_1SparseMatrixBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a761bd872a06b59632fcff7b7807a77ce inherit pub_methods_classEigen_1_1SparseMatrixBase"><td class="memItemLeft" align="right" valign="top">const internal::eval&lt; <a class="el" href="classEigen_1_1SparseMatrix.html">SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt; &gt;::type&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrixBase.html#a761bd872a06b59632fcff7b7807a77ce">eval</a> () const</td></tr>
<tr class="separator:a761bd872a06b59632fcff7b7807a77ce inherit pub_methods_classEigen_1_1SparseMatrixBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a180fcba1ccf3cdf3252a263bc1de7a1d inherit pub_methods_classEigen_1_1SparseMatrixBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structEigen_1_1EigenBase.html#a554f30542cc2316add4b1ea0a492ff02">Index</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrixBase.html#a180fcba1ccf3cdf3252a263bc1de7a1d">innerSize</a> () const</td></tr>
<tr class="separator:a180fcba1ccf3cdf3252a263bc1de7a1d inherit pub_methods_classEigen_1_1SparseMatrixBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7eedffa867031f649fd0fb9cc23ce4be inherit pub_methods_classEigen_1_1SparseMatrixBase"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrixBase.html#a7eedffa867031f649fd0fb9cc23ce4be">isVector</a> () const</td></tr>
<tr class="separator:a7eedffa867031f649fd0fb9cc23ce4be inherit pub_methods_classEigen_1_1SparseMatrixBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9d4d71b3f34389e6fc01f2b86e43f7a4 inherit pub_methods_classEigen_1_1SparseMatrixBase"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classEigen_1_1Product.html">Product</a>&lt; <a class="el" href="classEigen_1_1SparseMatrix.html">SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;, OtherDerived, AliasFreeProduct &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrixBase.html#a9d4d71b3f34389e6fc01f2b86e43f7a4">operator*</a> (const <a class="el" href="classEigen_1_1SparseMatrixBase.html">SparseMatrixBase</a>&lt; OtherDerived &gt; &amp;other) const</td></tr>
<tr class="separator:a9d4d71b3f34389e6fc01f2b86e43f7a4 inherit pub_methods_classEigen_1_1SparseMatrixBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac86cc88a4cfef21db6b64ec0ab4c8f0a inherit pub_methods_classEigen_1_1SparseMatrixBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structEigen_1_1EigenBase.html#a554f30542cc2316add4b1ea0a492ff02">Index</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrixBase.html#ac86cc88a4cfef21db6b64ec0ab4c8f0a">outerSize</a> () const</td></tr>
<tr class="separator:ac86cc88a4cfef21db6b64ec0ab4c8f0a inherit pub_methods_classEigen_1_1SparseMatrixBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac8d0414b56d9d620ce9a698c1b281e5d inherit pub_methods_classEigen_1_1SparseMatrixBase"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classEigen_1_1SparseView.html">SparseView</a>&lt; <a class="el" href="classEigen_1_1SparseMatrix.html">SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrixBase.html#ac8d0414b56d9d620ce9a698c1b281e5d">pruned</a> (const Scalar &amp;reference=Scalar(0), const RealScalar &amp;epsilon=<a class="el" href="structEigen_1_1NumTraits.html">NumTraits</a>&lt; Scalar &gt;::dummy_precision()) const</td></tr>
<tr class="separator:ac8d0414b56d9d620ce9a698c1b281e5d inherit pub_methods_classEigen_1_1SparseMatrixBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1944e9fa9ce7937bfc3a87b2cb94371f inherit pub_methods_classEigen_1_1SparseMatrixBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structEigen_1_1EigenBase.html#a554f30542cc2316add4b1ea0a492ff02">Index</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrixBase.html#a1944e9fa9ce7937bfc3a87b2cb94371f">rows</a> () const</td></tr>
<tr class="separator:a1944e9fa9ce7937bfc3a87b2cb94371f inherit pub_methods_classEigen_1_1SparseMatrixBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a124bc57921775eb9aa2dfd9727e23472 inherit pub_methods_classEigen_1_1SparseMatrixBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structEigen_1_1EigenBase.html#a554f30542cc2316add4b1ea0a492ff02">Index</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrixBase.html#a124bc57921775eb9aa2dfd9727e23472">size</a> () const</td></tr>
<tr class="separator:a124bc57921775eb9aa2dfd9727e23472 inherit pub_methods_classEigen_1_1SparseMatrixBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a51d4898bd6a57cc3ba543a39b102423e inherit pub_methods_classEigen_1_1SparseMatrixBase"><td class="memItemLeft" align="right" valign="top">SparseSymmetricPermutationProduct&lt; <a class="el" href="classEigen_1_1SparseMatrix.html">SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;, Upper|Lower &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrixBase.html#a51d4898bd6a57cc3ba543a39b102423e">twistedBy</a> (const <a class="el" href="classEigen_1_1PermutationMatrix.html">PermutationMatrix</a>&lt; Dynamic, Dynamic, <a class="el" href="classEigen_1_1SparseMatrixBase.html#a0b540ba724726ebe953f8c0df06081ed">StorageIndex</a> &gt; &amp;perm) const</td></tr>
<tr class="separator:a51d4898bd6a57cc3ba543a39b102423e inherit pub_methods_classEigen_1_1SparseMatrixBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_structEigen_1_1EigenBase"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_structEigen_1_1EigenBase')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="structEigen_1_1EigenBase.html">Eigen::EigenBase&lt; SparseMatrix&lt; Scalar_, Options_, StorageIndex_ &gt; &gt;</a></td></tr>
<tr class="memitem:a2d768a9877f5f69f49432d447b552bfe inherit pub_methods_structEigen_1_1EigenBase"><td class="memItemLeft" align="right" valign="top">EIGEN_CONSTEXPR <a class="el" href="structEigen_1_1EigenBase.html#a554f30542cc2316add4b1ea0a492ff02">Index</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEigen_1_1EigenBase.html#a2d768a9877f5f69f49432d447b552bfe">cols</a> () const EIGEN_NOEXCEPT</td></tr>
<tr class="separator:a2d768a9877f5f69f49432d447b552bfe inherit pub_methods_structEigen_1_1EigenBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1fbabe7f12bcbfba3b9a448b1f5e46fa inherit pub_methods_structEigen_1_1EigenBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1SparseMatrix.html">SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEigen_1_1EigenBase.html#a1fbabe7f12bcbfba3b9a448b1f5e46fa">derived</a> ()</td></tr>
<tr class="separator:a1fbabe7f12bcbfba3b9a448b1f5e46fa inherit pub_methods_structEigen_1_1EigenBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd4f3f1c57b7594b96a7e30f2974ea2e inherit pub_methods_structEigen_1_1EigenBase"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classEigen_1_1SparseMatrix.html">SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEigen_1_1EigenBase.html#afd4f3f1c57b7594b96a7e30f2974ea2e">derived</a> () const</td></tr>
<tr class="separator:afd4f3f1c57b7594b96a7e30f2974ea2e inherit pub_methods_structEigen_1_1EigenBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac22eb0695d00edd7d4a3b2d0a98b81c2 inherit pub_methods_structEigen_1_1EigenBase"><td class="memItemLeft" align="right" valign="top">EIGEN_CONSTEXPR <a class="el" href="structEigen_1_1EigenBase.html#a554f30542cc2316add4b1ea0a492ff02">Index</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEigen_1_1EigenBase.html#ac22eb0695d00edd7d4a3b2d0a98b81c2">rows</a> () const EIGEN_NOEXCEPT</td></tr>
<tr class="separator:ac22eb0695d00edd7d4a3b2d0a98b81c2 inherit pub_methods_structEigen_1_1EigenBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae106171b6fefd3f7af108a8283de36c9 inherit pub_methods_structEigen_1_1EigenBase"><td class="memItemLeft" align="right" valign="top">EIGEN_CONSTEXPR <a class="el" href="structEigen_1_1EigenBase.html#a554f30542cc2316add4b1ea0a492ff02">Index</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEigen_1_1EigenBase.html#ae106171b6fefd3f7af108a8283de36c9">size</a> () const EIGEN_NOEXCEPT</td></tr>
<tr class="separator:ae106171b6fefd3f7af108a8283de36c9 inherit pub_methods_structEigen_1_1EigenBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_types_classEigen_1_1SparseMatrixBase"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classEigen_1_1SparseMatrixBase')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classEigen_1_1SparseMatrixBase.html">Eigen::SparseMatrixBase&lt; SparseMatrix&lt; Scalar_, Options_, StorageIndex_ &gt; &gt;</a></td></tr>
<tr class="memitem:a0b540ba724726ebe953f8c0df06081ed inherit pub_types_classEigen_1_1SparseMatrixBase"><td class="memItemLeft" align="right" valign="top">typedef internal::traits&lt; <a class="el" href="classEigen_1_1SparseMatrix.html">SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt; &gt;::<a class="el" href="classEigen_1_1SparseMatrixBase.html#a0b540ba724726ebe953f8c0df06081ed">StorageIndex</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrixBase.html#a0b540ba724726ebe953f8c0df06081ed">StorageIndex</a></td></tr>
<tr class="separator:a0b540ba724726ebe953f8c0df06081ed inherit pub_types_classEigen_1_1SparseMatrixBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac254d3b61718ebc2136d27bac043dcb7 inherit pub_types_classEigen_1_1SparseMatrixBase"><td class="memItemLeft" align="right" valign="top">typedef Scalar&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseMatrixBase.html#ac254d3b61718ebc2136d27bac043dcb7">value_type</a></td></tr>
<tr class="separator:ac254d3b61718ebc2136d27bac043dcb7 inherit pub_types_classEigen_1_1SparseMatrixBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_types_structEigen_1_1EigenBase"><td colspan="2" onclick="javascript:toggleInherit('pub_types_structEigen_1_1EigenBase')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="structEigen_1_1EigenBase.html">Eigen::EigenBase&lt; SparseMatrix&lt; Scalar_, Options_, StorageIndex_ &gt; &gt;</a></td></tr>
<tr class="memitem:a554f30542cc2316add4b1ea0a492ff02 inherit pub_types_structEigen_1_1EigenBase"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Eigen::Index</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEigen_1_1EigenBase.html#a554f30542cc2316add4b1ea0a492ff02">Index</a></td></tr>
<tr class="memdesc:a554f30542cc2316add4b1ea0a492ff02 inherit pub_types_structEigen_1_1EigenBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">The interface type of indices.  <a href="structEigen_1_1EigenBase.html#a554f30542cc2316add4b1ea0a492ff02">More...</a><br /></td></tr>
<tr class="separator:a554f30542cc2316add4b1ea0a492ff02 inherit pub_types_structEigen_1_1EigenBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classEigen_1_1SparseCompressedBase"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classEigen_1_1SparseCompressedBase')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classEigen_1_1SparseCompressedBase.html">Eigen::SparseCompressedBase&lt; SparseMatrix&lt; Scalar_, Options_, StorageIndex_ &gt; &gt;</a></td></tr>
<tr class="memitem:af79f020db965367d97eb954fc68d8f99 inherit pro_methods_classEigen_1_1SparseCompressedBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1SparseCompressedBase.html#af79f020db965367d97eb954fc68d8f99">SparseCompressedBase</a> ()</td></tr>
<tr class="separator:af79f020db965367d97eb954fc68d8f99 inherit pro_methods_classEigen_1_1SparseCompressedBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a4f28e83ea504f0d8ee76c4b8701939d6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4f28e83ea504f0d8ee76c4b8701939d6">&#9670;&nbsp;</a></span>SparseMatrix() <span class="overload">[1/5]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::<a class="el" href="classEigen_1_1SparseMatrix.html">SparseMatrix</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Default constructor yielding an empty <code>0</code> <code>x</code> <code>0</code> matrix </p>

</div>
</div>
<a id="aa647b5f0462b9986e3c907e9ca7c5984"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa647b5f0462b9986e3c907e9ca7c5984">&#9670;&nbsp;</a></span>SparseMatrix() <span class="overload">[2/5]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::<a class="el" href="classEigen_1_1SparseMatrix.html">SparseMatrix</a> </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a>&#160;</td>
          <td class="paramname"><em>rows</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a>&#160;</td>
          <td class="paramname"><em>cols</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Constructs a <em>rows</em> <code>x</code> <em>cols</em> empty matrix </p>

</div>
</div>
<a id="ac4a6307cd6ba6b4ee7124d590d3120bf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac4a6307cd6ba6b4ee7124d590d3120bf">&#9670;&nbsp;</a></span>SparseMatrix() <span class="overload">[3/5]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<div class="memtemplate">
template&lt;typename OtherDerived &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::<a class="el" href="classEigen_1_1SparseMatrix.html">SparseMatrix</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classEigen_1_1SparseMatrixBase.html">SparseMatrixBase</a>&lt; OtherDerived &gt; &amp;&#160;</td>
          <td class="paramname"><em>other</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Constructs a sparse matrix from the sparse expression <em>other</em> </p>

</div>
</div>
<a id="a794f49fa972d5d39fc81c0925aae1513"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a794f49fa972d5d39fc81c0925aae1513">&#9670;&nbsp;</a></span>SparseMatrix() <span class="overload">[4/5]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<div class="memtemplate">
template&lt;typename OtherDerived , unsigned int UpLo&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::<a class="el" href="classEigen_1_1SparseMatrix.html">SparseMatrix</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classEigen_1_1SparseSelfAdjointView.html">SparseSelfAdjointView</a>&lt; OtherDerived, UpLo &gt; &amp;&#160;</td>
          <td class="paramname"><em>other</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Constructs a sparse matrix from the sparse selfadjoint view <em>other</em> </p>

</div>
</div>
<a id="a85ce452dd42db3db4e262e955f7820aa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a85ce452dd42db3db4e262e955f7820aa">&#9670;&nbsp;</a></span>SparseMatrix() <span class="overload">[5/5]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::<a class="el" href="classEigen_1_1SparseMatrix.html">SparseMatrix</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classEigen_1_1SparseMatrix.html">SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt; &amp;&#160;</td>
          <td class="paramname"><em>other</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Copy constructor (it performs a deep copy) </p>

</div>
</div>
<a id="ac837d39f0ae378ecb132f5ef2d7fa74b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac837d39f0ae378ecb132f5ef2d7fa74b">&#9670;&nbsp;</a></span>~SparseMatrix()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::~<a class="el" href="classEigen_1_1SparseMatrix.html">SparseMatrix</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Destructor </p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a05c9adc323553ed53726acae06fc4c18"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a05c9adc323553ed53726acae06fc4c18">&#9670;&nbsp;</a></span>coeff()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">Scalar <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::coeff </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a>&#160;</td>
          <td class="paramname"><em>row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a>&#160;</td>
          <td class="paramname"><em>col</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>the value of the matrix at position <em>i</em>, <em>j</em> This function returns Scalar(0) if the element is an explicit <em>zero</em> </dd></dl>

</div>
</div>
<a id="a6e4f970149f1cbab1eecc2a04c291fb1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6e4f970149f1cbab1eecc2a04c291fb1">&#9670;&nbsp;</a></span>coeffRef()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">Scalar&amp; <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::coeffRef </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a>&#160;</td>
          <td class="paramname"><em>row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a>&#160;</td>
          <td class="paramname"><em>col</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>a non-const reference to the value of the matrix at position <em>i</em>, <em>j</em> </dd></dl>
<p>If the element does not exist then it is inserted via the <a class="el" href="classEigen_1_1SparseMatrix.html#ae2d8f72ff86a300b76f9edd67df8d8fd">insert(Index,Index)</a> function which itself turns the matrix into a non compressed form if that was not the case.</p>
<p>This is a O(log(nnz_j)) operation (binary search) plus the cost of <a class="el" href="classEigen_1_1SparseMatrix.html#ae2d8f72ff86a300b76f9edd67df8d8fd">insert(Index,Index)</a> function if the element does not already exist. </p>

</div>
</div>
<a id="a36b8cc95234b4e2de38a199b6b2af9fc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a36b8cc95234b4e2de38a199b6b2af9fc">&#9670;&nbsp;</a></span>cols()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a> <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::cols </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>the number of columns of the matrix </dd></dl>

</div>
</div>
<a id="ab0e43ac03eb34e451e0f16e97ea2afda"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab0e43ac03eb34e451e0f16e97ea2afda">&#9670;&nbsp;</a></span>conservativeResize()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::conservativeResize </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a>&#160;</td>
          <td class="paramname"><em>rows</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a>&#160;</td>
          <td class="paramname"><em>cols</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Resizes the matrix to a <em>rows</em> x <em>cols</em> matrix leaving old values untouched.</p>
<p>If the sizes of the matrix are decreased, then the matrix is turned to <b>uncompressed-mode</b> and the storage of the out of bounds coefficients is kept and reserved. Call <a class="el" href="classEigen_1_1SparseMatrix.html#a6400e6e733a7131f9b776d6386d2ed89">makeCompressed()</a> to pack the entries and squeeze extra memory.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classEigen_1_1SparseMatrix.html#ad9e36e669468663012b77bf1bff8cc4f">reserve()</a>, <a class="el" href="classEigen_1_1SparseMatrix.html#a2feb71dd2ed222057a77ff92b736badc">setZero()</a>, <a class="el" href="classEigen_1_1SparseMatrix.html#a6400e6e733a7131f9b776d6386d2ed89">makeCompressed()</a> </dd></dl>

</div>
</div>
<a id="ae6f4db56c76e4d374eb8507fbef5bdb5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae6f4db56c76e4d374eb8507fbef5bdb5">&#9670;&nbsp;</a></span>diagonal() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classEigen_1_1Diagonal.html">DiagonalReturnType</a> <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::diagonal </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>a read-write expression of the diagonal coefficients. </dd></dl>
<dl class="section warning"><dt>Warning</dt><dd>If the diagonal entries are written, then all diagonal entries <b>must</b> already exist, otherwise an assertion will be raised. </dd></dl>

</div>
</div>
<a id="a20301b7b657f0948d6a6da68509fb4da"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a20301b7b657f0948d6a6da68509fb4da">&#9670;&nbsp;</a></span>diagonal() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="classEigen_1_1Diagonal.html">ConstDiagonalReturnType</a> <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::diagonal </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>a const expression of the diagonal coefficients. </dd></dl>

</div>
</div>
<a id="a0f927d1e7251a78585b12bf451423d4e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0f927d1e7251a78585b12bf451423d4e">&#9670;&nbsp;</a></span>innerIndexPtr() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classEigen_1_1SparseMatrixBase.html#a0b540ba724726ebe953f8c0df06081ed">StorageIndex</a>* <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::innerIndexPtr </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>a non-const pointer to the array of inner indices. This function is aimed at interoperability with other libraries. </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classEigen_1_1SparseMatrix.html#a5e9513f7d7336a698a47ff3135d6d555">valuePtr()</a>, <a class="el" href="classEigen_1_1SparseMatrix.html#a6de5655e0e36dfefd9812d65f48092f9">outerIndexPtr()</a> </dd></dl>

</div>
</div>
<a id="ade3e26297390865d80a09d1ce06cc916"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ade3e26297390865d80a09d1ce06cc916">&#9670;&nbsp;</a></span>innerIndexPtr() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="classEigen_1_1SparseMatrixBase.html#a0b540ba724726ebe953f8c0df06081ed">StorageIndex</a>* <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::innerIndexPtr </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>a const pointer to the array of inner indices. This function is aimed at interoperability with other libraries. </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classEigen_1_1SparseMatrix.html#a5e9513f7d7336a698a47ff3135d6d555">valuePtr()</a>, <a class="el" href="classEigen_1_1SparseMatrix.html#a6de5655e0e36dfefd9812d65f48092f9">outerIndexPtr()</a> </dd></dl>

</div>
</div>
<a id="a0fa5da473fe96a8ae7fae6f3ca2d5b62"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0fa5da473fe96a8ae7fae6f3ca2d5b62">&#9670;&nbsp;</a></span>innerNonZeroPtr() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classEigen_1_1SparseMatrixBase.html#a0b540ba724726ebe953f8c0df06081ed">StorageIndex</a>* <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::innerNonZeroPtr </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>a non-const pointer to the array of the number of non zeros of the inner vectors. This function is aimed at interoperability with other libraries. </dd></dl>
<dl class="section warning"><dt>Warning</dt><dd>it returns the null pointer 0 in compressed mode </dd></dl>

</div>
</div>
<a id="a62ba20726a10c2c9d095aed024297a2a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a62ba20726a10c2c9d095aed024297a2a">&#9670;&nbsp;</a></span>innerNonZeroPtr() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="classEigen_1_1SparseMatrixBase.html#a0b540ba724726ebe953f8c0df06081ed">StorageIndex</a>* <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::innerNonZeroPtr </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>a const pointer to the array of the number of non zeros of the inner vectors. This function is aimed at interoperability with other libraries. </dd></dl>
<dl class="section warning"><dt>Warning</dt><dd>it returns the null pointer 0 in compressed mode </dd></dl>

</div>
</div>
<a id="aa6411a0a909423d2d843a2e7d8b8e4e7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa6411a0a909423d2d843a2e7d8b8e4e7">&#9670;&nbsp;</a></span>innerSize()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a> <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::innerSize </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>the number of rows (resp. columns) of the matrix if the storage order column major (resp. row major) </dd></dl>

</div>
</div>
<a id="ae2d8f72ff86a300b76f9edd67df8d8fd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae2d8f72ff86a300b76f9edd67df8d8fd">&#9670;&nbsp;</a></span>insert()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classEigen_1_1SparseMatrix.html">SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::Scalar &amp; <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::insert </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a>&#160;</td>
          <td class="paramname"><em>row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a>&#160;</td>
          <td class="paramname"><em>col</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>a reference to a novel non zero coefficient with coordinates <em>row</em> x <em>col</em>. The non zero coefficient must <b>not</b> already exist.</dd></dl>
<p>If the matrix <code>*this</code> is in compressed mode, then <code>*this</code> is turned into uncompressed mode while reserving room for 2 x this-&gt;<a class="el" href="classEigen_1_1SparseMatrix.html#aa6411a0a909423d2d843a2e7d8b8e4e7">innerSize()</a> non zeros if <a class="el" href="classEigen_1_1SparseMatrix.html#ad9e36e669468663012b77bf1bff8cc4f">reserve(Index)</a> has not been called earlier. In this case, the insertion procedure is optimized for a <em>sequential</em> insertion mode where elements are assumed to be inserted by increasing outer-indices.</p>
<p>If that's not the case, then it is strongly recommended to either use a triplet-list to assemble the matrix, or to first call <a class="el" href="classEigen_1_1SparseMatrix.html#ae344017e0e191f452ee84fa6a384ea7a">reserve(const SizesType &amp;)</a> to reserve the appropriate number of non-zero elements per inner vector.</p>
<p>Assuming memory has been appropriately reserved, this function performs a sorted insertion in O(1) if the elements of each inner vector are inserted in increasing inner index order, and in O(nnz_j) for a random insertion. </p>

</div>
</div>
<a id="a837934b33a80fe996ff20500373d3a61"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a837934b33a80fe996ff20500373d3a61">&#9670;&nbsp;</a></span>isCompressed()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classEigen_1_1SparseCompressedBase.html">Eigen::SparseCompressedBase</a>&lt; Derived &gt;::isCompressed</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>whether <code>*this</code> is in compressed form. </dd></dl>

</div>
</div>
<a id="a6400e6e733a7131f9b776d6386d2ed89"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6400e6e733a7131f9b776d6386d2ed89">&#9670;&nbsp;</a></span>makeCompressed()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::makeCompressed </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Turns the matrix into the <em>compressed</em> format. </p>

</div>
</div>
<a id="a03de8b3da2c142ce8698a76123b3e7d3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a03de8b3da2c142ce8698a76123b3e7d3">&#9670;&nbsp;</a></span>nonZeros()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a> <a class="el" href="classEigen_1_1SparseCompressedBase.html">Eigen::SparseCompressedBase</a>&lt; Derived &gt;::nonZeros</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>the number of non zero coefficients </dd></dl>

</div>
</div>
<a id="a6de5655e0e36dfefd9812d65f48092f9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6de5655e0e36dfefd9812d65f48092f9">&#9670;&nbsp;</a></span>outerIndexPtr() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classEigen_1_1SparseMatrixBase.html#a0b540ba724726ebe953f8c0df06081ed">StorageIndex</a>* <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::outerIndexPtr </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>a non-const pointer to the array of the starting positions of the inner vectors. This function is aimed at interoperability with other libraries. </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classEigen_1_1SparseMatrix.html#a5e9513f7d7336a698a47ff3135d6d555">valuePtr()</a>, <a class="el" href="classEigen_1_1SparseMatrix.html#a0f927d1e7251a78585b12bf451423d4e">innerIndexPtr()</a> </dd></dl>

</div>
</div>
<a id="ad2d1a4d9033c2bc0917ea09cdc5c700c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad2d1a4d9033c2bc0917ea09cdc5c700c">&#9670;&nbsp;</a></span>outerIndexPtr() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="classEigen_1_1SparseMatrixBase.html#a0b540ba724726ebe953f8c0df06081ed">StorageIndex</a>* <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::outerIndexPtr </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>a const pointer to the array of the starting positions of the inner vectors. This function is aimed at interoperability with other libraries. </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classEigen_1_1SparseMatrix.html#a5e9513f7d7336a698a47ff3135d6d555">valuePtr()</a>, <a class="el" href="classEigen_1_1SparseMatrix.html#a0f927d1e7251a78585b12bf451423d4e">innerIndexPtr()</a> </dd></dl>

</div>
</div>
<a id="a47c7cdf3c713ea69d08387aaf78e0c53"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a47c7cdf3c713ea69d08387aaf78e0c53">&#9670;&nbsp;</a></span>outerSize()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a> <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::outerSize </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>the number of columns (resp. rows) of the matrix if the storage order column major (resp. row major) </dd></dl>

</div>
</div>
<a id="aca3916ec112e13c513380b47fad7954b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aca3916ec112e13c513380b47fad7954b">&#9670;&nbsp;</a></span>prune() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<div class="memtemplate">
template&lt;typename KeepFunc &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::prune </td>
          <td>(</td>
          <td class="paramtype">const KeepFunc &amp;&#160;</td>
          <td class="paramname"><em>keep</em> = <code>KeepFunc()</code></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Turns the matrix into compressed format, and suppresses all nonzeros which do not satisfy the predicate <em>keep</em>. The functor type <em>KeepFunc</em> must implement the following function: </p><div class="fragment"><div class="line"><span class="keywordtype">bool</span> operator() (<span class="keyword">const</span> <a class="code" href="structEigen_1_1EigenBase.html#a554f30542cc2316add4b1ea0a492ff02">Index</a>&amp; row, <span class="keyword">const</span> <a class="code" href="structEigen_1_1EigenBase.html#a554f30542cc2316add4b1ea0a492ff02">Index</a>&amp; col, <span class="keyword">const</span> Scalar&amp; value) <span class="keyword">const</span>;</div>
<div class="ttc" id="astructEigen_1_1EigenBase_html_a554f30542cc2316add4b1ea0a492ff02"><div class="ttname"><a href="structEigen_1_1EigenBase.html#a554f30542cc2316add4b1ea0a492ff02">Eigen::EigenBase&lt; SparseMatrix&lt; Scalar_, Options_, StorageIndex_ &gt; &gt;::Index</a></div><div class="ttdeci">Eigen::Index Index</div><div class="ttdoc">The interface type of indices.</div><div class="ttdef"><b>Definition:</b> EigenBase.h:41</div></div>
</div><!-- fragment --> <dl class="section see"><dt>See also</dt><dd>prune(Scalar,RealScalar) </dd></dl>

</div>
</div>
<a id="ab4b7ffe0c08f653f5c34b02b9b12e6bf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab4b7ffe0c08f653f5c34b02b9b12e6bf">&#9670;&nbsp;</a></span>prune() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::prune </td>
          <td>(</td>
          <td class="paramtype">const Scalar &amp;&#160;</td>
          <td class="paramname"><em>reference</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const RealScalar &amp;&#160;</td>
          <td class="paramname"><em>epsilon</em> = <code><a class="el" href="structEigen_1_1NumTraits.html">NumTraits</a>&lt;RealScalar&gt;::dummy_precision()</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Suppresses all nonzeros which are <b>much</b> <b>smaller</b> <b>than</b> <em>reference</em> under the tolerance <em>epsilon</em> </p>

</div>
</div>
<a id="ae344017e0e191f452ee84fa6a384ea7a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae344017e0e191f452ee84fa6a384ea7a">&#9670;&nbsp;</a></span>reserve() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<div class="memtemplate">
template&lt;class SizesType &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::reserve </td>
          <td>(</td>
          <td class="paramtype">const SizesType &amp;&#160;</td>
          <td class="paramname"><em>reserveSizes</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Preallocates <em>reserveSize</em>[<code>j</code>] non zeros for each column (resp. row) <code>j</code>.</p>
<p>This function turns the matrix in non-compressed mode.</p>
<p>The type <code>SizesType</code> must expose the following interface: </p><div class="fragment"><div class="line"><span class="keyword">typedef</span> <a class="code" href="classEigen_1_1SparseMatrixBase.html#ac254d3b61718ebc2136d27bac043dcb7">value_type</a>;</div>
<div class="line"><span class="keyword">const</span> <a class="code" href="classEigen_1_1SparseMatrixBase.html#ac254d3b61718ebc2136d27bac043dcb7">value_type</a>&amp; operator[](i) <span class="keyword">const</span>;</div>
<div class="ttc" id="aclassEigen_1_1SparseMatrixBase_html_ac254d3b61718ebc2136d27bac043dcb7"><div class="ttname"><a href="classEigen_1_1SparseMatrixBase.html#ac254d3b61718ebc2136d27bac043dcb7">Eigen::SparseMatrixBase&lt; SparseMatrix&lt; Scalar_, Options_, StorageIndex_ &gt; &gt;::value_type</a></div><div class="ttdeci">Scalar value_type</div><div class="ttdef"><b>Definition:</b> SparseMatrixBase.h:38</div></div>
</div><!-- fragment --><p> for <code>i</code> in the [0,this-&gt;<a class="el" href="classEigen_1_1SparseMatrix.html#a47c7cdf3c713ea69d08387aaf78e0c53">outerSize()</a>[ range. Typical choices include std::vector&lt;int&gt;, <a class="el" href="group__matrixtypedefs.html#gaf20e523ca57ee8ef0a945cd4703d2bfd" title="Dynamic×1 vector of type int.">Eigen::VectorXi</a>, <a class="el" href="classEigen_1_1DenseBase.html#a68a7ece6c5629d1e9447a321fcb14ccd">Eigen::VectorXi::Constant</a>, etc. </p>

</div>
</div>
<a id="ad9e36e669468663012b77bf1bff8cc4f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad9e36e669468663012b77bf1bff8cc4f">&#9670;&nbsp;</a></span>reserve() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::reserve </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a>&#160;</td>
          <td class="paramname"><em>reserveSize</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Preallocates <em>reserveSize</em> non zeros.</p>
<p>Precondition: the matrix must be in compressed mode. </p>

</div>
</div>
<a id="a835ae5b304ddbb187eac25d5850b2ced"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a835ae5b304ddbb187eac25d5850b2ced">&#9670;&nbsp;</a></span>resize()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::resize </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a>&#160;</td>
          <td class="paramname"><em>rows</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a>&#160;</td>
          <td class="paramname"><em>cols</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Resizes the matrix to a <em>rows</em> x <em>cols</em> matrix and initializes it to zero.</p>
<p>This function does not free the currently allocated memory. To release as much as memory as possible, call</p><div class="fragment"><div class="line">mat.data().squeeze(); </div>
</div><!-- fragment --><p> after resizing it.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classEigen_1_1SparseMatrix.html#ad9e36e669468663012b77bf1bff8cc4f">reserve()</a>, <a class="el" href="classEigen_1_1SparseMatrix.html#a2feb71dd2ed222057a77ff92b736badc">setZero()</a> </dd></dl>

</div>
</div>
<a id="a853a76dd42349fa2f3654a4a61e0f574"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a853a76dd42349fa2f3654a4a61e0f574">&#9670;&nbsp;</a></span>rows()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a> <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::rows </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>the number of rows of the matrix </dd></dl>

</div>
</div>
<a id="a8f09e3597f37aa8861599260af6a53e0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8f09e3597f37aa8861599260af6a53e0">&#9670;&nbsp;</a></span>setFromTriplets() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar , int Options_, typename StorageIndex_ &gt; </div>
<div class="memtemplate">
template&lt;typename InputIterators &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar, Options_, StorageIndex_ &gt;::setFromTriplets </td>
          <td>(</td>
          <td class="paramtype">const InputIterators &amp;&#160;</td>
          <td class="paramname"><em>begin</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const InputIterators &amp;&#160;</td>
          <td class="paramname"><em>end</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Fill the matrix <code>*this</code> with the list of <em>triplets</em> defined by the iterator range <em>begin</em> - <em>end</em>.</p>
<p>A <em>triplet</em> is a tuple (i,j,value) defining a non-zero element. The input list of triplets does not have to be sorted, and can contains duplicated elements. In any case, the result is a <b>sorted</b> and <b>compressed</b> sparse matrix where the duplicates have been summed up. This is a <em>O(n)</em> operation, with <em>n</em> the number of triplet elements. The initial contents of <code>*this</code> is destroyed. The matrix <code>*this</code> must be properly resized beforehand using the <a class="el" href="classEigen_1_1SparseMatrix.html#aa647b5f0462b9986e3c907e9ca7c5984">SparseMatrix(Index,Index)</a> constructor, or the <a class="el" href="classEigen_1_1SparseMatrix.html#a835ae5b304ddbb187eac25d5850b2ced">resize(Index,Index)</a> method. The sizes are not extracted from the triplet list.</p>
<p>The <em>InputIterators</em> value_type must provide the following interface: </p><div class="fragment"><div class="line">Scalar value() <span class="keyword">const</span>; <span class="comment">// the value</span></div>
<div class="line">Scalar row() <span class="keyword">const</span>;   <span class="comment">// the row index i</span></div>
<div class="line">Scalar col() <span class="keyword">const</span>;   <span class="comment">// the column index j</span></div>
</div><!-- fragment --><p> See for instance the <a class="el" href="classEigen_1_1Triplet.html" title="A small structure to hold a non zero as a triplet (i,j,value).">Eigen::Triplet</a> template class.</p>
<p>Here is a typical usage example: </p><div class="fragment"><div class="line"><span class="keyword">typedef</span> Triplet&lt;double&gt; T;</div>
<div class="line">std::vector&lt;T&gt; tripletList;</div>
<div class="line">tripletList.reserve(estimation_of_entries);</div>
<div class="line"><span class="keywordflow">for</span>(...)</div>
<div class="line">{</div>
<div class="line">  <span class="comment">// ...</span></div>
<div class="line">  tripletList.push_back(T(i,j,v_ij));</div>
<div class="line">}</div>
<div class="line">SparseMatrixType m(<a class="code" href="classEigen_1_1SparseMatrix.html#a853a76dd42349fa2f3654a4a61e0f574">rows</a>,<a class="code" href="classEigen_1_1SparseMatrix.html#a36b8cc95234b4e2de38a199b6b2af9fc">cols</a>);</div>
<div class="line">m.setFromTriplets(tripletList.begin(), tripletList.end());</div>
<div class="line"><span class="comment">// m is ready to go!</span></div>
<div class="ttc" id="aclassEigen_1_1SparseMatrix_html_a36b8cc95234b4e2de38a199b6b2af9fc"><div class="ttname"><a href="classEigen_1_1SparseMatrix.html#a36b8cc95234b4e2de38a199b6b2af9fc">Eigen::SparseMatrix::cols</a></div><div class="ttdeci">Index cols() const</div><div class="ttdef"><b>Definition:</b> SparseMatrix.h:142</div></div>
<div class="ttc" id="aclassEigen_1_1SparseMatrix_html_a853a76dd42349fa2f3654a4a61e0f574"><div class="ttname"><a href="classEigen_1_1SparseMatrix.html#a853a76dd42349fa2f3654a4a61e0f574">Eigen::SparseMatrix::rows</a></div><div class="ttdeci">Index rows() const</div><div class="ttdef"><b>Definition:</b> SparseMatrix.h:140</div></div>
</div><!-- fragment --><dl class="section warning"><dt>Warning</dt><dd>The list of triplets is read multiple times (at least twice). Therefore, it is not recommended to define an abstract iterator over a complex data-structure that would be expensive to evaluate. The triplets should rather be explicitly stored into a std::vector for instance. </dd></dl>

</div>
</div>
<a id="a3e8c96b7dd72d03f14b5cf40f5005d55"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3e8c96b7dd72d03f14b5cf40f5005d55">&#9670;&nbsp;</a></span>setFromTriplets() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar , int Options_, typename StorageIndex_ &gt; </div>
<div class="memtemplate">
template&lt;typename InputIterators , typename DupFunctor &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar, Options_, StorageIndex_ &gt;::setFromTriplets </td>
          <td>(</td>
          <td class="paramtype">const InputIterators &amp;&#160;</td>
          <td class="paramname"><em>begin</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const InputIterators &amp;&#160;</td>
          <td class="paramname"><em>end</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">DupFunctor&#160;</td>
          <td class="paramname"><em>dup_func</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>The same as setFromTriplets but when duplicates are met the functor <em>dup_func</em> is applied: </p><div class="fragment"><div class="line">value = dup_func(OldValue, NewValue)</div>
</div><!-- fragment --><p> Here is a C++11 example keeping the latest entry only: </p><div class="fragment"><div class="line">mat.setFromTriplets(triplets.begin(), triplets.end(), [] (<span class="keyword">const</span> Scalar&amp;,<span class="keyword">const</span> Scalar &amp;b) { return b; });</div>
</div><!-- fragment --> 
</div>
</div>
<a id="aa4064cc1e3a4038cf09ff03af5a3ffb5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa4064cc1e3a4038cf09ff03af5a3ffb5">&#9670;&nbsp;</a></span>setIdentity()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::setIdentity </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Sets *this to the identity matrix. This function also turns the matrix into compressed mode, and drop any reserved memory. </p>

</div>
</div>
<a id="a2feb71dd2ed222057a77ff92b736badc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2feb71dd2ed222057a77ff92b736badc">&#9670;&nbsp;</a></span>setZero()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::setZero </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Removes all non zeros but keep allocated memory</p>
<p>This function does not free the currently allocated memory. To release as much as memory as possible, call</p><div class="fragment"><div class="line">mat.data().squeeze(); </div>
</div><!-- fragment --><p> after resizing it.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classEigen_1_1SparseMatrix.html#a835ae5b304ddbb187eac25d5850b2ced">resize(Index,Index)</a>, data() </dd></dl>

</div>
</div>
<a id="ad2b635a54bf2fe66facd1cb1872aae9f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad2b635a54bf2fe66facd1cb1872aae9f">&#9670;&nbsp;</a></span>sum()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename Index_ &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">internal::traits&lt; <a class="el" href="classEigen_1_1SparseMatrix.html">SparseMatrix</a>&lt; Scalar_, Options_, Index_ &gt; &gt;::Scalar <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, Index_ &gt;::sum</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Overloaded for performance </p>

</div>
</div>
<a id="a20eec45a940a4dd7edcacfa21468b328"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a20eec45a940a4dd7edcacfa21468b328">&#9670;&nbsp;</a></span>swap()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::swap </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classEigen_1_1SparseMatrix.html">SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt; &amp;&#160;</td>
          <td class="paramname"><em>other</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Swaps the content of two sparse matrices of the same type. This is a fast operation that simply swaps the underlying pointers and parameters. </p>

</div>
</div>
<a id="a542c2a877dcffbd48248b43d3eaf670f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a542c2a877dcffbd48248b43d3eaf670f">&#9670;&nbsp;</a></span>uncompress()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::uncompress </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Turns the matrix into the uncompressed mode </p>

</div>
</div>
<a id="a5e9513f7d7336a698a47ff3135d6d555"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5e9513f7d7336a698a47ff3135d6d555">&#9670;&nbsp;</a></span>valuePtr() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">Scalar* <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::valuePtr </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>a non-const pointer to the array of values. This function is aimed at interoperability with other libraries. </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classEigen_1_1SparseMatrix.html#a0f927d1e7251a78585b12bf451423d4e">innerIndexPtr()</a>, <a class="el" href="classEigen_1_1SparseMatrix.html#a6de5655e0e36dfefd9812d65f48092f9">outerIndexPtr()</a> </dd></dl>

</div>
</div>
<a id="a6ed99bab9d4f142c629f69a93a2d1efb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6ed99bab9d4f142c629f69a93a2d1efb">&#9670;&nbsp;</a></span>valuePtr() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Scalar_ , int Options_, typename StorageIndex_ &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const Scalar* <a class="el" href="classEigen_1_1SparseMatrix.html">Eigen::SparseMatrix</a>&lt; Scalar_, Options_, StorageIndex_ &gt;::valuePtr </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>a const pointer to the array of values. This function is aimed at interoperability with other libraries. </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classEigen_1_1SparseMatrix.html#a0f927d1e7251a78585b12bf451423d4e">innerIndexPtr()</a>, <a class="el" href="classEigen_1_1SparseMatrix.html#a6de5655e0e36dfefd9812d65f48092f9">outerIndexPtr()</a> </dd></dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="SparseMatrix_8h_source.html">SparseMatrix.h</a></li>
<li><a class="el" href="SparseRedux_8h_source.html">SparseRedux.h</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="namespaceEigen.html">Eigen</a></li><li class="navelem"><a class="el" href="classEigen_1_1SparseMatrix.html">SparseMatrix</a></li>
    <li class="footer">Generated on Thu Apr 21 2022 13:07:56 for Eigen by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.9.1 </li>
  </ul>
</div>
</body>
</html>
